﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.SharePoint;

namespace Data.AID
{
    public class PeriodoAtividade
    {
        public int IdAtividade { get; set; }
        public DateTime DataInicio { get; set; }
        public DateTime DataFim { get; set; }
        public string Atividade { get; set; }
        public int Ano { get; set; }
    }

    public class PeriodoAtividadeDAO
    {
        private SPSite Site = SPContext.Current.Site;
        private SPWeb Web = SPContext.Current.Web;

        public List<PeriodoAtividade> GetAllPeriods()
        {
            using (SPSite eSite = new SPSite(Site.ID))
            {
                using (SPWeb eWeb = eSite.OpenWeb(Web.ID))
                {
                    return eWeb.Lists["PeriodoAtividade"].Items.Cast<SPListItem>()
                        .Select(p => new PeriodoAtividade
                        {
                            IdAtividade = Convert.ToInt32(p["ID"].ToString()),
                            DataInicio = Convert.ToDateTime(p["DataInicio"]),
                            DataFim = Convert.ToDateTime(p["DataFim"]),
                            Atividade = p["Atividade"].ToString(),
                            Ano = Convert.ToInt32(p["Ano"].ToString().Split(new char[] { '#' },StringSplitOptions.RemoveEmptyEntries)[1])
                        }).ToList();
                }
            }
        }
        public PeriodoAtividade GetPeriod(string activity)
        {
            return GetAllPeriods().Where(p => p.Ano == DateTime.Now.Year && p.Atividade == activity).SingleOrDefault();
        }

    }
}
